home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / contrib / springer / llncs / llncs.sty < prev    next >
Text File  |  1993-11-07  |  26KB  |  754 lines

  1. % LLNCS DOCUMENT STYLE -- version 1.1
  2. % for LaTeX version 2.09
  3.  
  4. % This style file is an adaptation of
  5. % the original LaTeX article.sty, by:
  6. % Frank Holzwarth, Springer-Verlag Heidelberg,
  7. % Tiergartenstrasse 17, D-6900 Heidelberg.
  8.  
  9. \typeout{Document Style `llncs', <version 1.1>}
  10.  
  11. \frenchspacing
  12. \def~{\penalty\@M\kern3pt}
  13.  
  14. \def\thebibliography#1{\section*{References}\small\list
  15.   {\arabic{enumi}.}{\settowidth\labelwidth{#1.}\leftmargin\labelwidth
  16.     \advance\leftmargin\labelsep
  17.     \usecounter{enumi}}
  18.     \def\newblock{\hskip .11em plus .33em minus -.07em}
  19.     \sloppy
  20.     \sfcode`\.=1000\relax}
  21.  
  22. \def\ds@citeauthoryear{\def\thebibliography##1{\section*{References}%
  23.     \small\list{}{\settowidth\labelwidth{}\leftmargin\parindent
  24.     \itemindent=-\parindent
  25.     \labelsep=\z@
  26.     \usecounter{enumi}}%
  27.     \def\newblock{\hskip .11em plus .33em minus -.07em}%
  28.     \sloppy
  29.     \sfcode`\.=1000\relax}%
  30.     \def\@cite##1{##1}%
  31.     \def\@lbibitem[##1]##2{\item[]\if@filesw
  32.       {\def\protect####1{\string ####1\space}\immediate
  33.     \write\@auxout{\string\bibcite{##2}{##1}}}\fi\ignorespaces}}%
  34.  
  35. \newif\if@envcountreset\@envcountresetfalse
  36. \def\ds@envcountreset{\@envcountresettrue}
  37.  
  38. \def\@mbi{cmmib10}
  39. \def\@ptsize{0} \@namedef{ds@11pt}{\def\@ptsize{1}}
  40. \@namedef{ds@12pt}{\def\@ptsize{2}}
  41. \def\ds@twoside{\@twosidetrue \@mparswitchtrue}
  42. \def\ds@draft{\overfullrule
  43. 5pt}
  44. \@options
  45.  
  46. \ds@twoside
  47.  
  48. \lineskip 1pt \normallineskip 1pt
  49. \def\baselinestretch{1}
  50.  
  51. \def\@normalsize{\@setsize\normalsize{12pt}\xpt\@xpt
  52. \abovedisplayskip=3 mm plus6pt minus 4pt
  53. \belowdisplayskip=3 mm plus6pt minus 4pt
  54. \abovedisplayshortskip=0mm plus6pt minus 2pt
  55. \belowdisplayshortskip=2 mm plus4pt minus 4pt}
  56.  
  57. \mathchardef\Gamma="0100
  58. \mathchardef\Delta="0101
  59. \mathchardef\Theta="0102
  60. \mathchardef\Lambda="0103
  61. \mathchardef\Xi="0104
  62. \mathchardef\Pi="0105
  63. \mathchardef\Sigma="0106
  64. \mathchardef\Upsilon="0107
  65. \mathchardef\Phi="0108
  66. \mathchardef\Psi="0109
  67. \mathchardef\Omega="010A
  68.  
  69. \def\small{\@setsize\small{11pt}\ixpt\@ixpt
  70. \abovedisplayskip=2.5 mm plus5pt minus 3pt
  71. \belowdisplayskip=2.5 mm plus5pt minus 3pt
  72. \abovedisplayshortskip=0mm plus6pt minus 2pt
  73. \belowdisplayshortskip=2 mm plus4pt minus 4pt
  74. \def\@listi{\leftmargin\leftmargini\topsep 4pt plus 2pt minus 2pt}}
  75.  
  76. \def\footnotesize{\@setsize\footnotesize{11pt}\ixpt\@ixpt
  77. \abovedisplayskip=2.5 mm plus5pt minus 3pt
  78. \belowdisplayskip=2.5 mm plus5pt minus 3pt
  79. \abovedisplayshortskip=0mm plus6pt minus 2pt
  80. \belowdisplayshortskip=2 mm plus4pt minus 4pt
  81. \def\@listi{\leftmargin\leftmargini\topsep 4pt plus 2pt minus 2pt}}
  82.  
  83. \def\scriptsize{\@setsize\scriptsize{8.4pt}\viipt\@viipt}
  84.  
  85. \def\tiny{\@setsize\tiny{6pt}\vpt\@vpt}
  86. \def\large{\@setsize\large{13.2pt}\xipt\@xipt}
  87. \def\Large{\@setsize\Large{14.4pt}\xiipt\@xiipt}
  88. \def\LARGE{\@setsize\LARGE{16.8pt}\xivpt\@xivpt}
  89. \def\huge{\@setsize\huge{22pt}\xxpt\@xxpt}
  90. \def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
  91. \@normalsize
  92.  
  93. \if@twoside
  94.    \oddsidemargin  44pt
  95.    \evensidemargin 82pt
  96.    \marginparwidth 107pt
  97. \else \oddsidemargin 63pt \evensidemargin 63pt
  98.  \marginparwidth 90pt
  99. \fi
  100. \marginparsep 11pt
  101. \topmargin 11pt \headheight 12pt \headsep 13.66pt
  102. \footheight 12pt \footskip 30pt
  103. \textwidth 12.2truecm
  104. \textheight 19.3truecm
  105. \columnsep 1cc \columnseprule 0pt
  106.  
  107. \footnotesep 7.7pt
  108. \skip\footins 9pt plus 4pt minus 2pt
  109. \floatsep 12pt plus 2pt minus 2pt
  110. \textfloatsep 8mm plus 2pt minus 4pt
  111. \intextsep 8mm plus 2pt minus 2pt
  112. \@maxsep 8mm
  113.  
  114. \dblfloatsep 12pt plus 2pt minus 2pt
  115. \dbltextfloatsep 20pt plus 2pt minus 4pt
  116. \@dblmaxsep 20pt
  117.  
  118. \@fptop 0pt plus 1fil \@fpsep 8pt plus 2fil \@fpbot 0pt plus 1fil
  119. \@dblfptop0pt plus1fil \@dblfpsep8pt plus2fil\@dblfpbot 0pt plus1fil
  120. \marginparpush 5pt
  121.  
  122. \parskip 0pt plus 1pt \parindent 1.5em \topsep 8pt plus 2pt minus 4pt
  123. \partopsep 2pt plus 1pt minus 1pt \itemsep \z@
  124. \@lowpenalty 51 \@medpenalty 151 \@highpenalty 301
  125. \@beginparpenalty-\@lowpenalty\@endparpenalty -\@lowpenalty\@itempenalty
  126. -\@lowpenalty
  127.  
  128. \def\vec#1{\mathchoice{\mbox{\boldmath$\displaystyle\bf#1$}}
  129. {\mbox{\boldmath$\textstyle\bf#1$}}
  130. {\mbox{\boldmath$\scriptstyle\bf#1$}}
  131. {\mbox{\boldmath$\scriptscriptstyle\bf#1$}}}
  132.  
  133. \def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth
  134.   \def\@svsec{}\else
  135.   \refstepcounter{#1}\edef\@svsec{\csname the#1\endcsname\quad }\fi
  136.   \@tempskipa #5\relax
  137.    \ifdim \@tempskipa>\z@
  138.   \begingroup #6\relax
  139.   \noindent{\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\par}
  140.   \endgroup
  141.     \csname #1mark\endcsname{#7}\addcontentsline
  142.    {toc}{#1}{\ifnum #2>\c@secnumdepth \else
  143.             \protect\numberline{\csname the#1\endcsname}\fi
  144.           #7}\else
  145.   \def\@svsechd{#6\hskip #3\@svsec #8\csname #1mark\endcsname
  146.             {#7}\addcontentsline
  147.              {toc}{#1}{\ifnum #2>\c@secnumdepth \else
  148.                \protect\numberline{\csname the#1\endcsname}\fi
  149.              #7}}\fi
  150.   \@xsect{#5}}
  151.  
  152. \def\part{\par \addvspace{4ex} \@afterindentfalse \secdef\@part\@spart}
  153.  
  154. \def\@part[#1]#2{\ifnum \c@secnumdepth >\m@ne \refstepcounter{part}
  155. \addcontentsline{toc}{part}{\thepart \hspace{1em}#1}\else
  156. \addcontentsline{toc}{part}{#1}\fi { \parindent 0pt \raggedright
  157.  \ifnum \c@secnumdepth >\m@ne \Large \bf
  158.  Part\thepart\par\nobreak\fi\huge
  159. \bf #2\markboth{}{}\par } \nobreak \vskip 3ex \@afterheading }
  160.  
  161. \def\@spart#1{{\parindent 0pt \raggedright
  162.  \huge \bf
  163.  #1\par} \nobreak \vskip 3ex \@afterheading }
  164.  
  165. \def\section{\@startsection {section}{1}{\z@}{-18pt plus -4pt minus
  166. -4pt}{12pt plus 4pt minus 4pt}{\Large\bf\boldmath
  167. \pretolerance=10000\relax\rightskip=0pt plus8em}}
  168. \def\subsection{\@startsection{subsection}{2}{\z@}{-18pt plus-4pt minus
  169.  -4pt}{8pt plus 4pt minus 4pt}{\normalsize\bf\boldmath
  170. \pretolerance=10000\relax\rightskip=0pt plus8em}}
  171. \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-18pt plus-4pt
  172.  minus -4pt}{-0.5em plus -.22em minus -0.1em}{\normalsize\bf\boldmath}}
  173. \def\paragraph{\@startsection{paragraph}{4}{\z@}{-12pt plus -4pt minus
  174.  -4pt}{-0.5em plus -.22em minus -0.1em}{\normalsize\it}}
  175. \def\subparagraph#1{\typeout{LLNCS Warning: You should not use
  176. \protect\subparagraph \space in this style.}\vskip0.5cm
  177. You should not use $\backslash${\tt subparagraph} in this
  178. style.\vskip0.5cm}
  179.  
  180. \setcounter{secnumdepth}{2}
  181.  
  182. \def\appendix{\par
  183.  \setcounter{section}{0}
  184.  \setcounter{subsection}{0}
  185.  \def\thesection{\Alph{section}}}
  186.  
  187. \leftmargini 17pt     \leftmarginii 17pt
  188. \leftmarginiii 17pt   \leftmarginiv 17pt
  189. \leftmarginv 10pt       \leftmarginvi 10pt
  190. \leftmargin\leftmargini \labelwidth\leftmargini
  191. \advance\labelwidth-\labelsep
  192. \labelsep 5pt
  193. \parsep 0pt plus 1pt
  194. \def\@listi{\leftmargin\leftmargini}
  195. \def\@listii{\leftmargin\leftmarginii
  196.  \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  197.  \topsep 0pt plus 1pt}
  198. \def\@listiii{\leftmargin\leftmarginiii
  199.  \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  200.  \topsep 0pt plus 1pt}
  201. \def\@listiv{\leftmargin\leftmarginiv
  202.  \labelwidth\leftmarginiv\advance\labelwidth-\labelsep
  203.  \topsep 0pt plus 1pt}
  204. \def\@listv{\leftmargin\leftmarginv
  205.  \labelwidth\leftmarginv\advance\labelwidth-\labelsep
  206.  \topsep 0pt plus 1pt}
  207. \def\@listvi{\leftmargin\leftmarginvi
  208.  \labelwidth\leftmarginvi\advance\labelwidth-\labelsep
  209.  \topsep 0pt plus 1pt}
  210.  
  211. \def\labelenumi{\arabic{enumi}.}
  212. \def\theenumi{\arabic{enumi}}
  213. \def\labelenumii{(\alph{enumii})}
  214. \def\theenumii{\alph{enumii}}
  215. \def\p@enumii{\theenumi}
  216. \def\labelenumiii{\roman{enumiii}.}
  217. \def\theenumiii{\roman{enumiii}}
  218. \def\p@enumiii{\theenumi(\theenumii)}
  219. \def\labelenumiv{\Alph{enumiv}.}
  220. \def\theenumiv{\Alph{enumiv}}
  221. \def\p@enumiv{\p@enumiii\theenumiii}
  222.  
  223. \def\labelitemi{\bf --}
  224. \def\labelitemii{$\bullet$}
  225. \def\labelitemiii{$\ast$}
  226. \def\labelitemiv{$\cdot$}
  227.  
  228. \def\verse{\let\\=\@centercr
  229.  \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent
  230.  \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
  231. \let\endverse\endlist
  232. \def\quotation{\list{}{\listparindent 1.5em
  233.  \itemindent\listparindent
  234.  \rightmargin\leftmargin}\item[]}
  235. \let\endquotation=\endlist
  236. \def\quote{\list{}{\rightmargin\leftmargin}\item[]}
  237. \let\endquote=\endlist
  238.  
  239. \def\descriptionlabel#1{\hspace\labelsep \bf #1}
  240. \def\description{\list{}{\labelwidth\z@ \itemindent-\leftmargin
  241.  \let\makelabel\descriptionlabel}}
  242. \let\enddescription\endlist
  243.  
  244. \def\theequation{\arabic{equation}}
  245.  
  246. \def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn
  247.  \else \newpage \fi \thispagestyle{empty}\c@page\z@}
  248. \def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi}
  249.  
  250. \arraycolsep 1.4pt \tabcolsep 1.4pt \arrayrulewidth .4pt \doublerulesep
  251. 2pt
  252. \tabbingsep \labelsep
  253.  
  254. \skip\@mpfootins = \skip\footins
  255. \fboxsep = 3pt \fboxrule = .4pt
  256.  
  257. \newcounter{part}
  258. \newcounter {section}
  259. \newcounter {subsection}[section]
  260. \newcounter {subsubsection}[subsection]
  261. \newcounter {paragraph}[subsubsection]
  262.  
  263. \def\thepart{\Roman{part}}
  264. \def\thesection {\arabic{section}}
  265. \def\thesubsection {\thesection.\arabic{subsection}}
  266. \def\thesubsubsection {\thesubsection.\arabic{subsubsection}}
  267. \def\theparagraph {\thesubsubsection.\arabic{paragraph}}
  268.  
  269. \def\@pnumwidth{1.55em}
  270. \def\@tocrmarg {2.55em}
  271. \def\@dotsep{4.5}
  272. \setcounter{tocdepth}{3}
  273.  
  274. \def\tableofcontents{\section*{Table of Contents}
  275.  \@starttoc{toc}}
  276. \def\l@part#1#2{\addpenalty{\@secpenalty}
  277.  \addvspace{2.25em plus 1pt} \begingroup
  278.  \@tempdima 3em \parindent \z@ \rightskip \@pnumwidth \parfillskip
  279. -\@pnumwidth
  280.  {\Large \bf \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
  281.  \nobreak \endgroup}
  282. %
  283. \def\numberline#1{\advance\hangindent by\@tempdima%
  284. \hbox to\@tempdima{\hss#1\enspace}}
  285. %
  286. \def\bf@dottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth \else
  287.   \vskip \z@ plus .2pt
  288.   {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip
  289.     \parindent #2\relax\@afterindenttrue
  290.    \interlinepenalty\@M
  291.    \leavevmode
  292.    \@tempdima #3\relax \advance\leftskip \@tempdima \hbox{}\hskip
  293.    -\leftskip
  294. {\bf#4}\nobreak\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep
  295.        mu$}\hfill \nobreak \hbox to\@pnumwidth{\hfil\rm #5}\par}\fi}
  296. %
  297. \def\l@section{\vskip2mm\bf@dottedtocline{1}{0em}{1.7em}}
  298. \def\l@subsection{\@dottedtocline{2}{1.7em}{2.3em}}
  299. \def\l@subsubsection{\@dottedtocline{3}{4em}{2em}}
  300. \def\l@paragraph{\@dottedtocline{4}{6em}{2em}}
  301. \def\l@subparagraph{\@dottedtocline{5}{8em}{2em}}
  302. \def\listoffigures{\section*{List of Figures\markboth
  303.  {List of Figures}{List of Figures}}\@starttoc{lof}}
  304. \def\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
  305. \def\listoftables{\section*{List of Tables\markboth
  306.  {List of Tables}{List of Tables}}\@starttoc{lot}}
  307. \let\l@table\l@figure
  308.  
  309. \def\endthebibliography{\endlist\normalsize}
  310.  
  311. \newif\if@restonecol
  312. \def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
  313. \columnseprule \z@
  314. \columnsep 35pt\twocolumn[\section*{Index}]
  315.  \markboth{Index}{Index}\thispagestyle{plain}\parindent\z@
  316.  \parskip\z@ plus .3pt\relax\let\item\@idxitem}
  317. \def\@idxitem{\par\hangindent 40pt}
  318. \def\subitem{\par\hangindent 40pt \hspace*{20pt}}
  319. \def\subsubitem{\par\hangindent 40pt \hspace*{30pt}}
  320. \def\endtheindex{\if@restonecol\onecolumn\else\clearpage\fi}
  321. \def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}
  322.  
  323. \def\footnoterule{\kern-3\p@\hrule width 2 true cm\kern 2.6\p@}
  324.  
  325. \long\def\@makefntext#1{\@setpar{\@@par\@tempdima \hsize
  326.   \advance\@tempdima-1em\parshape \@ne 1em\@tempdima}\par
  327.   \parindent 1em\noindent \hbox to \z@{\hss$^{\@thefnmark}$\ }#1}
  328.  
  329. \setcounter{topnumber}{2}
  330. \def\topfraction{.9}
  331. \setcounter{bottomnumber}{1}
  332. \def\bottomfraction{.3}
  333. \setcounter{totalnumber}{3}
  334. \def\textfraction{.15}
  335. \def\floatpagefraction{.85}
  336. \setcounter{dbltopnumber}{2}
  337. \def\dbltopfraction{.85}
  338. \def\dblfloatpagefraction{.85}
  339.  
  340. \long\def\@makecaption#1#2{
  341.  \vskip 10pt
  342.  \setbox\@tempboxa\hbox{{\bf #1} #2}
  343.  \ifdim \wd\@tempboxa >\hsize \unhbox\@tempboxa\par \else \hbox
  344. to\hsize{\box\@tempboxa\hfil}
  345.  \fi\vskip5pt}
  346.  
  347. \long\def\@caption#1[#2]#3{\addcontentsline{\csname
  348.   ext@#1\endcsname}{#1}{\protect\numberline{\csname
  349.   the#1\endcsname}{\ignorespaces #2}}\par
  350.   \begingroup
  351.     \@parboxrestore
  352.     \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
  353.   \endgroup}
  354.  
  355. \newcounter{figure}
  356. \def\thefigure{\@arabic\c@figure}
  357.  
  358. \def\fps@figure{htbp}
  359. \def\ftype@figure{1}
  360. \def\ext@figure{lof}
  361. \def\fnum@figure{Fig.\thinspace\thefigure.}
  362. \def\figure{\@float{figure}\small\rm}
  363. \def\endfigure{\vskip-5pt\end@float}
  364. \@namedef{figure*}{\@dblfloat{figure}}
  365. \@namedef{endfigure*}{\end@dblfloat}
  366.  
  367. \newcounter{table}
  368. \def\thetable{\@arabic\c@table}
  369. \def\fps@table{htbp}
  370. \def\ftype@table{2}
  371. \def\ext@table{lot}
  372. \def\fnum@table{Table \thetable.}
  373. \def\table{\@float{table}\small\rm}
  374. \let\endtable\end@float
  375. \@namedef{table*}{\@dblfloat{table}}
  376. \@namedef{endtable*}{\end@dblfloat}
  377.  
  378. % LaTeX does not provide a command to enter the authors institute
  379. % addresses. The \institute command is defined here.
  380.  
  381. \newcounter{@inst}
  382. \newcounter{@auth}
  383.  
  384. \def\institute#1{\gdef\@institute{#1}}
  385.  
  386. \def\institutename{\par
  387.  \begingroup
  388.  \parskip=\z@
  389.  \parindent=\z@
  390.  \setcounter{@inst}{1}%
  391.  \def\and{\par\stepcounter{@inst}%
  392.  \noindent$^{\the@inst}$\enspace\ignorespaces}%
  393.  \setbox0=\vbox{\def\thanks##1{}\@institute}%
  394.  \ifnum\c@@inst=1\relax
  395.  \else
  396.    \setcounter{footnote}{\c@@inst}%
  397.    \setcounter{@inst}{1}%
  398.    \noindent$^{\the@inst}$\enspace
  399.  \fi
  400.  \ignorespaces
  401.  \@institute\par
  402.  \endgroup}
  403.  
  404. \def\@thanks{}
  405.  
  406. \def\@fnsymbol#1{\ifcase#1\or\star\or{\star\star}\or{\star\star\star}%
  407.    \or \dagger\or \ddagger\or
  408.    \mathchar "278\or \mathchar "27B\or \|\or **\or \dagger\dagger
  409.    \or \ddagger\ddagger\else\@ctrerr\fi\relax}
  410.  
  411. \def\inst#1{\unskip$^{#1}$}
  412.  
  413. \def\subtitle#1{\gdef\@subtitle{#1}}
  414. \def\@subtitle{}
  415.  
  416. \def\maketitle{\par
  417.  \begingroup
  418.  \parindent=\z@
  419.  \def\thefootnote{\fnsymbol{footnote}}
  420.  \if@twocolumn
  421.  \twocolumn[\@maketitle]
  422.  \else \newpage
  423.  \global\@topnum\z@ \@maketitle \fi\thispagestyle{empty}\@thanks
  424.  \endgroup
  425.  \let\maketitle\relax
  426.  \let\@maketitle\relax
  427.  \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\gdef\@subtitle{}%
  428.  \let\thanks\relax}
  429.  
  430. \def\@maketitle{\newpage
  431.  \begin{center}%
  432.  {\LARGE \bf\boldmath
  433.   \pretolerance=10000
  434.   \@title \par}\vskip .8cm
  435. \if!\@subtitle!\else {\Large \bf\boldmath
  436.   \vskip -.65cm
  437.   \pretolerance=10000
  438.   \@subtitle \par}\vskip .8cm\fi
  439. {\normalsize\rm\lineskip .5em
  440. \@author\vskip.35cm}
  441.  {\small\rm\institutename}
  442.  \end{center}%
  443.  }
  444.  
  445. \mark{{}{}}
  446.  
  447. % Define `abstract' environment
  448. \def\abstract{%
  449. \list{}{\advance\topsep by0.35cm\relax\small\rm
  450.  \leftmargin=1cm
  451.  \labelwidth=\z@
  452.  \listparindent=\z@
  453.  \itemindent\listparindent
  454.  \rightmargin\leftmargin}\item[\hskip\labelsep\bf Abstract.]}
  455. \let\endabstract=\endlist
  456. \def\quote{\list{}{\rightmargin\leftmargin}\item[]}
  457. \let\endquote=\endlist
  458.  
  459. \def\ps@headings{\def\@evenhead{}%
  460. \let\@oddhead\@evenhead
  461. \let\@evenfoot\@evenhead
  462. \let\@oddfoot\@evenhead
  463. \def\sectionmark##1{}%
  464. \def\subsectionmark##1{}}
  465. \def\ps@myheadings{\let\@mkboth\@gobbletwo
  466. \def\@oddhead{\hbox{}\small\rm\rightmark \hfil\thepage}%
  467. \def\@oddfoot{}\def\@evenhead{\small\rm\thepage\hfil
  468. \leftmark\hbox {}}%
  469. \def\@evenfoot{}\def\sectionmark##1{}\def\subsectionmark##1{}}
  470.  
  471. \def\today{\ifcase\month\or
  472.  January\or February\or March\or April\or May\or June\or
  473.  July\or August\or September\or October\or November\or December\fi
  474.  \space\number\day, \number\year}
  475.  
  476. \ps@headings \pagenumbering{arabic} \onecolumn
  477. \if@twoside\else\raggedbottom\fi
  478.  
  479. % new environments and theorems
  480. % borrowed form the LTMP-style of Springer-Verlag
  481. % designed by Dr. Christoph Ender
  482. %
  483. % define the new theorem like environments
  484. % define a new style of environments where it is possible to define
  485. % the font % used as the theorem name and the fontfamily for the text.
  486. %
  487. % \newstytheorem{name}{thefont}{txtfont}{Text}[Counter]
  488. % \newstytheorem{name}{thefont}{txtfont}[oldname]{Text}
  489. %
  490. % #1 - name of theorem
  491. % #2 - theorem font
  492. % #3 - text font
  493. %
  494. \def\newstytheorem#1#2#3{%
  495. \@ifnextchar[{\che@othm{#1}{#2}{#3}}{\che@nthm{#1}{#2}{#3}}}
  496. %
  497. % #1 - name of theorem
  498. % #2 - theorem font
  499. % #3 - text font
  500. % #4 - text string of thorem name
  501. %
  502. \def\che@nthm#1#2#3#4{%
  503. \@ifnextchar[{\che@xnthm{#1}{#2}{#3}{#4}}{\che@ynthm{#1}{#2}{#3}{#4}}}
  504. %
  505. % #1 - name of theorem
  506. % #2 - theorem font
  507. % #3 - text font
  508. % #4 - text string of thorem name
  509. % #5 - add theorem counter to reset list of another counter
  510. %
  511. \def\che@xnthm#1#2#3#4[#5]{\expandafter
  512. \@ifdefinable\csname #1\endcsname
  513. {\@definecounter{#1}\if@envcountreset\@addtoreset{#1}{#5}\fi
  514. \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
  515. \global\@namedef{#1}{\che@thm{#1}{#4}{#2}{#3}}\global
  516. \@namedef{end#1}{\@endtheorem}}}
  517. %
  518. % #1 - name of theorem
  519. % #2 - theorem font
  520. % #3 - text font
  521. % #4 - text string of thorem name
  522. %
  523. \def\che@ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
  524. {\@definecounter{#1}%
  525. \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
  526. \global\@namedef{#1}{\che@thm{#1}{#2}{#3}{#4}}\global
  527. \@namedef{end#1}{\@endtheorem}}}
  528. %
  529. % change oldthm if oldname in specification is '*'
  530. % then don't use a counter
  531. % #1 - countername
  532. % #2 - theorem font
  533. % #3 - text font
  534. % #4 - counter used
  535. % #5 - string containing theorem name to print
  536. %
  537. \def\che@othm#1#2#3[#4]#5{\expandafter\@ifdefinable
  538. \csname#1\endcsname%
  539. {\@@othm@{#1}{#2}{#3}{#4}{#5}\global\@namedef{end#1}{\@endtheorem}}}
  540. %
  541. \def\@@othm@#1#2#3#4#5{\if *#4{\global\@namedef{the#1}{\relax}
  542. \global\@namedef{#1}{\@bthm@{}{#5}{#2}{#3}}}\else
  543. {\global\@namedef{the#1}{\@nameuse{the#4}}% define the counter
  544. \global\@namedef{#1}{\che@thm{#4}{#5}{#2}{#3}}}\fi}
  545. %
  546. % new defs for theorem environment che 17-MAR-1989
  547. % it improves the option possible
  548. %
  549. % #1 - countername  = theorem name
  550. % #2 - string containing theorem name to print
  551. % #3 - theorem font
  552. % #4 - text font
  553. \def\che@thm#1#2#3#4{\@ifnextchar({\@athm{#1}{#2}{#3}{#4}}{%
  554. \@ifnextchar *{\@bthm{#1}{#2}{#3}{#4}}%
  555. {\@@thm{#1}{#2}{#3}{#4}}}}
  556. %
  557. % \begin{thm}(A.1)[test]      results in:
  558. % \end{thm}                               thm A.1 (test) ....
  559. % #1 - theorem
  560. % #2 - string of theorem name
  561. % #3 - font for theorem name and label
  562. % #4 - Text font
  563. % #5 - is the new label
  564. % #6 - optional string
  565. %
  566. \def\@athm#1#2#3#4(#5){\@ifnextchar[{%
  567. \@aythm{#1}{#2}{#3}{#4}{#5}}{\@axthm{#1}{#2}{#3}{#4}{#5}}}
  568. \def\@axthm#1#2#3#4#5{\@@locthmlab{#1}{#5}%
  569. \@begintheorem{#2}{#5}{#3}{#4}\ignorespaces}
  570. \def\@aythm#1#2#3#4#5[#6]{\@@locthmlab{#1}{#5}%
  571. \fuh@opargbegintheorem{#2}{#5}{#6}{#3}{#4}\ignorespaces}
  572. %
  573. % \begin{thm}*[xytest]        results in:
  574. % \end{thm}                               thm (xytest) ....
  575. % #1 - theorem
  576. % #2 - string of theorem name
  577. % #3 - font for theorem name and label
  578. % #4 - Text font
  579. % #5 - optional string
  580. %
  581. \def\@bthm@#1#2#3#4{\@ifnextchar[{\@bythm{#1}{#2}{#3}{#4}}{%
  582. \@bxthm{#1}{#2}{#3}{#4}}}
  583. \def\@bthm#1#2#3#4*{\@ifnextchar[{\@bythm{#1}{#2}{#3}{#4}}{%
  584. \@bxthm{#1}{#2}{#3}{#4}}}
  585. \def\@bxthm#1#2#3#4{\if !#1!\relax\else\@@locthmlab{#1}{}\fi
  586. \@@begintheorem{#2}{#3}{#4}\ignorespaces}
  587. \def\@bythm#1#2#3#4[#5]{%
  588. \@@opargbegintheorem{#2}{#3}{#4}{#5}\ignorespaces}
  589. %
  590. % define local label
  591. %   if no number or a user specified label occured
  592. %
  593. \def\@@locthmlab#1#2{\expandafter\def\csname the#1\endcsname{#2}
  594. \let\@chetempa\protect\def\protect{\noexpand\protect\noexpand}%
  595. \edef\@currentlabel{\csname p@#1\endcsname\csname the#1\endcsname}%
  596. \let\protect\@chetempa}
  597. %
  598. % #1 - counter = theorem name
  599. % #2 - string with name
  600. % #3 - font for theorem name and label
  601. % #4 - font for text
  602. \def\@@thm#1#2#3#4{\refstepcounter
  603.     {#1}\@ifnextchar[{\che@ythm{#1}{#2}{#3}{#4}}{%
  604.     \che@xthm{#1}{#2}{#3}{#4}}}
  605. %
  606. \def\che@xthm#1#2#3#4{\che@begintheorem{#2}{\csname
  607. the#1\endcsname}{#3}{#4}\ignorespaces}
  608. \def\che@ythm#1#2#3#4[#5]{\che@opargbegintheorem{#2}{\csname
  609.        the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
  610. %
  611. % #1 - name of theorem
  612. % #2 - label string
  613. % #3 - font for name and lable
  614. % #4 - text fomt
  615. %
  616. \def\che@begintheorem#1#2#3#4{#4\trivlist\item[\hskip\labelsep
  617. #3#1\ts #2.]}
  618. %
  619. % #1 - name of theorem
  620. % #2 - label string
  621. % #3 - additonal text
  622. % #4 - font for name and lable
  623. % #5 - text fomt
  624. %
  625. \def\che@opargbegintheorem#1#2#3#4#5{#5\trivlist
  626. \item[\hskip\labelsep#4#1\ts #2\ #3.]}
  627. %
  628. \def\fuh@opargbegintheorem#1#2#3{\it \trivlist
  629.       \item[\hskip \labelsep{\bf #1\ #2\ (#3).}]}
  630. %
  631. \def\@@begintheorem#1#2#3{#3\trivlist\item[\hskip\labelsep
  632. #2#1.]}
  633. \def\@@opargbegintheorem#1#2#3#4{#3\trivlist\item[\hskip\labelsep
  634. #2#1 #4.]}
  635.  
  636. \newstytheorem{theorem}{\bf}{\it}{Theorem}[section]
  637. \newstytheorem{example}{\it}{\rm}{Example}[section]
  638. \newstytheorem{proposition}{\bf}{\it}[theorem]{Proposition}
  639. \newstytheorem{corollary}{\bf}{\it}[theorem]{Corollary}
  640. \newstytheorem{lemma}{\bf}{\it}[theorem]{Lemma}
  641. \newstytheorem{proof}{\it}{\rm}[*]{Proof}
  642. \newstytheorem{definition}{\bf}{\rm}[theorem]{Definition}
  643. \newstytheorem{remark}{\it}{\rm}[*]{Remark}
  644. \newstytheorem{exercise}{\it}{\rm}[theorem]{Exercise}
  645. \newstytheorem{problem}{\it}{\rm}[theorem]{Problem}
  646. \newstytheorem{solution}{\it}{\rm}[theorem]{Solution}
  647. \newstytheorem{note}{\it}{\rm}[theorem]{Note}
  648. \newstytheorem{question}{\it}{\rm}[theorem]{Question}
  649.  
  650. \def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
  651. \def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
  652. \penalty50\hskip1em\null\nobreak\hfil\squareforqed
  653. \parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}
  654.  
  655. \def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  656. \halign{\hfil
  657. $\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
  658. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
  659. \cr\to\cr}}}
  660. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
  661. \cr\to\cr}}}
  662. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  663. \gets\cr\to\cr}}}}}
  664. \def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  665. $\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}
  666. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
  667. \noalign{\vskip1.2pt}=\cr}}}
  668. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
  669. \noalign{\vskip1pt}=\cr}}}
  670. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  671. <\cr
  672. \noalign{\vskip0.9pt}=\cr}}}}}
  673. \def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  674. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}
  675. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
  676. \noalign{\vskip1.2pt}=\cr}}}
  677. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
  678. \noalign{\vskip1pt}=\cr}}}
  679. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  680. >\cr
  681. \noalign{\vskip0.9pt}=\cr}}}}}
  682. \def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  683. \halign{\hfil
  684. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}
  685. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
  686. >\cr\noalign{\vskip-1pt}<\cr}}}
  687. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
  688. >\cr\noalign{\vskip-0.8pt}<\cr}}}
  689. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  690. >\cr\noalign{\vskip-0.3pt}<\cr}}}}}
  691. \def\bbbr{{\rm I\!R}} %reelle Zahlen
  692. \def\bbbm{{\rm I\!M}}
  693. \def\bbbn{{\rm I\!N}} %natuerliche Zahlen
  694. \def\bbbf{{\rm I\!F}}
  695. \def\bbbh{{\rm I\!H}}
  696. \def\bbbk{{\rm I\!K}}
  697. \def\bbbp{{\rm I\!P}}
  698. \def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
  699. {\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
  700. \def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
  701. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  702. {\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
  703. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  704. {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
  705. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  706. {\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
  707. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}
  708. \def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  709. Q$}\hbox{\raise
  710. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  711. {\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
  712. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  713. {\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
  714. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}
  715. {\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
  716. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}
  717. \def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  718. T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  719. {\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
  720. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  721. {\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
  722. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  723. {\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
  724. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}
  725. \def\bbbs{{\mathchoice
  726. {\setbox0=\hbox{$\displaystyle     \rm S$}\hbox{\raise0.5\ht0\hbox
  727. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  728. to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  729. {\setbox0=\hbox{$\textstyle        \rm S$}\hbox{\raise0.5\ht0\hbox
  730. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  731. to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  732. {\setbox0=\hbox{$\scriptstyle      \rm S$}\hbox{\raise0.5\ht0\hbox
  733. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  734. to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}
  735. {\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
  736. to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  737. to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}
  738. \def\bbbz{{\mathchoice {\hbox{$\sf\textstyle Z\kern-0.4em Z$}}
  739. {\hbox{$\sf\textstyle Z\kern-0.4em Z$}}
  740. {\hbox{$\sf\scriptstyle Z\kern-0.3em Z$}}
  741. {\hbox{$\sf\scriptscriptstyle Z\kern-0.2em Z$}}}}
  742. \def\ts{\thinspace}
  743.  
  744. \def\typeset{\vfill\small\noindent This article was processed using
  745. the \LaTeX\ macro package with LLNCS style\par}
  746.  
  747. \def\enddocument{\par\typeset
  748. \@checkend{document}\clearpage\begingroup
  749. \if@filesw \immediate\closeout\@mainaux
  750. \def\global\@namedef##1##2{}\def\newlabel{\@testdef r}%
  751. \def\bibcite{\@testdef b}\@tempswafalse\makeatletter\input \jobname.aux
  752. \if@tempswa \@warning{Label(s) may have changed. Rerun to get
  753. cross-references right}\fi\fi\endgroup\deadcycles\z@\@@end}
  754.